#include "funlyComment.h"
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/ioctl.h>
#include <unistd.h> //close

void keyboard()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 95)
        return;

    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts("                                                                              ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" ┌───┐   ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐                   ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" │Esc│   │ F1│ F2│ F3│ F4│ │ F5│ F6│ F7│ F8│ │ F9│F10│F11│F12│ │P/S│S L│P/B│  ┌┐    ┌┐    ┌┐   ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" └───┘   └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘  └┘    └┘    └┘   ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" │~ `│! 1│@ 2│# 3│$ 4│\% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ BacSp │ │Ins│Hom│PUp│ │N L│ / │ * │ - │");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤ ├───┼───┼───┼───┤ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ | \\ │ │Del│End│PDn│ │ 7 │ 8 │ 9 │   │ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ├───┼───┼───┤ + │ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│\" '│ Enter  │               │ 4 │ 5 │ 6 │   │");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤     ┌───┐     ├───┼───┼───┼───┤ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" │ Shift  │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│  Shift   │     │ ↑ │     │ 1 │ 2 │ 3 │   │ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" ├─────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ ├───┴───┼───┤ E││ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" │ Ctrl│    │Alt │         Space         │ Alt│    │    │Ctrl│ │ ← │ ↓ │ → │ │   0   │ . │←─┘│ ");
    for (i = 0; i < (size.ws_col - 95) / 2; i++)
        printf(" ");
    puts(" └─────┴────┴────┴───────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───────┴───┴───┘ ");
    puts("                                                                                               ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}

void fuckYouBug()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 65)
        return;

    puts("																");
    puts("                                                              ");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts("  █████▒█    ██  ▄████▄   ██ ▄█▀       ██████╗ ██╗   ██╗ ██████╗ ");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts("▓██   ▒ ██  ▓██▒▒██▀ ▀█   ██▄█▒        ██╔══██╗██║   ██║██╔════╝ ");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts("▒████ ░▓██  ▒██░▒▓█    ▄ ▓███▄░        ██████╔╝██║   ██║██║  ███╗");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts("░▓█▒  ░▓▓█  ░██░▒▓▓▄ ▄██▒▓██ █▄        ██╔══██╗██║   ██║██║   ██║");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts("░▒█░   ▒▒█████▓ ▒ ▓███▀ ░▒██▒ █▄       ██████╔╝╚██████╔╝╚██████╔╝");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts(" ▒ ░   ░▒▓▒ ▒ ▒ ░ ░▒ ▒  ░▒ ▒▒ ▓▒       ╚═════╝  ╚═════╝  ╚═════╝ ");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts(" ░     ░░▒░ ░ ░   ░  ▒   ░ ░▒ ▒░                                 ");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts(" ░ ░    ░░░ ░ ░ ░        ░ ░░ ░                                  ");
    for (i = 0; i < (size.ws_col - 65) / 2; i++)
        printf(" ");
    puts("          ░     ░ ░      ░  ░                                    ");
    puts("                                                                 ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}

void fuckYouBeauty()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 56)
        return;

    puts("                                                        ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("                   .::::.                               ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("                 .::::::::.                             ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("                :::::::::::  FUCK YOU                   ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("            ..:::::::::::'                              ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("          '::::::::::::'                                ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("            .::::::::::                                 ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("       '::::::::::::::..                                ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("            ..::::::::::::.                             ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("          ``::::::::::::::::                            ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("           ::::``:::::::::'        .:::.                ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("          ::::'   ':::::'       .::::::::.              ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("        .::::'      ::::     .:::::::'::::.             ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("       .:::'       :::::  .:::::::::' ':::::.           ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("      .::'        :::::.:::::::::'      ':::::.         ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("     .::'         ::::::::::::::'         ``::::.       ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts(" ...:::           ::::::::::::'              ``::.      ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("```` ':.          ':::::::::'                  ::::..   ");
    for (i = 0; i < (size.ws_col - 56) / 2; i++)
        printf(" ");
    puts("                   '.:::::'                    ':'````..");
    puts("                                                                            ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}

void GodBeastBless()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 82)
        return;

    puts("                                                                               ");
    puts("                                                                               ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                                                   __----~~~~~~~~~~~------___  ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                                  .  .   ~~//====......          __--~ ~~      ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                  -.            _|//     |||\\  ~~~~~~::::... /~              ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("               ___-==_       _-~o~  \\/    |||  \\            _/~~-             ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("       __---~~~.==~||\\=_    -_--~/_-~|-   |\\   \\        _/~                  ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("   _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \\      /                     ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts(" .~       .~       |   \\ -_    /  /-   /   ||      \\   /                      ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("/  ____  /         |     \\ ~-_/  /|- _/   .||       \\ /                       ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("|~~    ~~|--~~~~--_ \\     ~==-/   | \\~--===~~        .\\                        ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("         '         ~-|      /|    |-~\\~~       __--~~                          ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                     |-~~-_/ |    |   ~\\_   _-~            /\\                  ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                          /  \\     \\__   /~                \\__                ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                      _--~ _/ | .-~~____--~-/                  ~~==.           ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                     ((->/~   '.|||' -_|    ~~-/ ,              . _||          ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                                -_     ~\\      ~~---l__i__i__i--~~_/           ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                                _-~-__   ~)  \\--______________--~~             ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                              //.-~~~-~_--~- |-------~~~~~~~~                  ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                                     //.-~~~--\\                                ");
    puts("                                                                               ");
    for (i = 0; i < (size.ws_col - 82) / 2; i++)
        printf(" ");
    puts("                            神兽保佑 代码无BUG!                                ");
    puts("                                                                               ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}

void theFuckSourceCode()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 73)
        return;

    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("                                                                         ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("                                       ,s555SB@@&                        ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("                                    :9H####@@@@@Xi                       ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("                                   1@@@@@@@@@@@@@@8                      ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("                                 ,8@@@@@@@@@B@@@@@@8                     ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("                                :B@@@@X3hi8Bs;B@@@@@Ah,                  ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("           ,8i                  r@@@B:     1S ,M@@@@@@#8;                ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("          1AB35.i:               X@@8 .   SGhr ,A@@@@@@@@S               ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("          1@h31MX8                18Hhh3i .i3r ,A@@@@@@@@@5              ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("          ;@&i,58r5                 rGSS:     :B@@@@@@@@@@A              ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("           1#i  . 9i                 hX.  .: .5@@@@@@@@@@@1              ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("            sG1,  ,G53s.              9#Xi;hS5 3B@@@@@@@B1               ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("             .h8h.,A@@@MXSs,           #@H1:    3ssSSX@1                 ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("             s ,@@@@@@@@@@@@Xhi,       r#@@X1s9M8    .GA981              ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("             ,. rS8H#@@@@@@@@@@#HG51;.  .h31i;9@r    .8@@@@BS;i;         ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("              .19AXXXAB@@@@@@@@@@@@@@#MHXG893hrX#XGGXM@@@@@@@@@@MS       ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("              s@@MM@@@hsX#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&,     ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("            :GB@#3G@@Brs ,1GM@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@B,    ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("          .hM@@@#@@#MX 51  r;iSGAM@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8    ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("        :3B@@@@@@@@@@@&9@h :Gs   .;sSXH@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:   ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("    s&HA#@@@@@@@@@@@@@@M89A;.8S.       ,r3@@@@@@@@@@@@@@@@@@@@@@@@@@@r   ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts(" ,13B@@@@@@@@@@@@@@@@@@@5 5B3 ;.         ;@@@@@@@@@@@@@@@@@@@@@@@@@@@i   ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("5#@@#&@@@@@@@@@@@@@@@@@@9  .39:          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@;   ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("9@@@X:MM@@@@@@@@@@@@@@@#;    ;31.         H@@@@@@@@@@@@@@@@@@@@@@@@@@:   ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts(" SH#@B9.rM@@@@@@@@@@@@@B       :.         3@@@@@@@@@@@@@@@@@@@@@@@@@@5   ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("   ,:.   9@@@@@@@@@@@#HB5                 .M@@@@@@@@@@@@@@@@@@@@@@@@@B   ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("         ,ssirhSM@&1;i19911i,.             s@@@@@@@@@@@@@@@@@@@@@@@@@@S  ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("            ,,,rHAri1h1rh&@#353Sh:          8@@@@@@@@@@@@@@@@@@@@@@@@@#: ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("          .A3hH@#5S553&@@#h   i:i9S          #@@@@@@@@@@@@@@@@@@@@@@@@@A.");
    puts("                                                                         ");
    puts("                                                                         ");
    for (i = 0; i < (size.ws_col - 73) / 2; i++)
        printf(" ");
    puts("                            又看源码，看你妹妹呀！                       ");
    puts("                                                                                       ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}

void TheLittleGirl()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 46)
        return;

    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("______________#########_______________________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("_____________############_____________________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("_____________#############____________________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("____________##__###########___________________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("___________###__######_#####__________________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("___________###_#######___####_________________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("__________###__##########_####________________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("_________####__###########_####_______________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("_______#####___###########__#####_____________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("______######___###_########___#####___________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("______#####___###___########___######_________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("_____######___###__###########___######_______");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("____######___####_##############__######______");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("___#######__#####################_#######_____");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("___#######__##############################____");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("__#######__######_#################_#######___");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("__#######__######_######_#########___######___");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("__#######____##__######___######_____######___");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("__#######________######____#####_____#####____");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("___######________#####_____#####_____####_____");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("____#####________####______#####_____###______");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("_____#####______;###________###______#________");
    for (i = 0; i < (size.ws_col - 46) / 2; i++)
        printf(" ");
    puts("_______##_______####________####______________");
    puts("                                              ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}

void weWantFuckYou()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 37)
        return;

    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("http://www.freebuf.com/              ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("         _.._        ,------------.  ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("      ,'      `.    ( We want you! ) ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("     /  __) __` \\    `-,----------' ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("    (  (`-`(-')  ) _.-'              ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("    /)  \\  = /  (                   ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("   /'    |--' .  \\                  ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("  (  ,---|  `-.)__`                  ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("   )(  `-.,--'   _`-.                ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("  '/,'          (  Uu\",             ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("   (_       ,    `/,-' )             ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("   `.__,  : `-'/  /`--'              ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("     |     `--'  |                   ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("     `   `-._   /                    ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("      \\        (                    ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("      / .      \\.  freebuf          ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("     / |` \\     ,-\\                ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("    /  \\| .)   /   \\               ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("   ( ,'|\\    ,'     :               ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("   | \\,`.`--\"/      }              ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("   `,'    \\  |,'    /               ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("  / \"-._   \\`-/      |             ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("  \"-.   \"-.,\'|     ;              ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts(" /        _/[\"---'\"\"]             ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts(":        /  |\"-     \'              ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("'           |      /                 ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("            `      |                 ");
    for (i = 0; i < (size.ws_col - 37) / 2; i++)
        printf(" ");
    puts("                                     ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}

void humanSkeleton()
{
    struct winsize size;
    int i;
    // 获取到终端的大小数据
    ioctl(STDIN_FILENO, TIOCGWINSZ, &size);
    if (size.ws_col < 37)
        return;

    puts("                                                                            ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("**************************************************************       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*                                                            *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    .=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-.      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |                     ______                     |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |                  .-\"      \"-.                  |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |                 /            \\                 |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |     _          |              |          _     |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |    ( \\         |,  .-.  .-.  ,|         / )    |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |     > \"=._     | )(__/  \\__)( |     _.=\" <     |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |    (_/\"=._\"=._ |/     /\\     \\| _.=\"_.=\"\\_)    |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |           \"=._\"(_     ^^     _)\"_.=\"           |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |               \"=\\__|IIIIII|__/=\"               |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |              _.=\"| \\IIIIII/ |\"=._              |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |    _     _.=\"_.=\"\\          /\"=._\"=._     _    |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |   ( \\_.=\"_.=\"     `--------`     \"=._\"=._/ )   |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |    > _.=\"                            \"=._ <    |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |   (_/                                    \\_)   |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    |                                                |      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*    '-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-='      *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*                                                            *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("*           LASCIATE OGNI SPERANZA, VOI CH'ENTRATE           *       ");
    for (i = 0; i < (size.ws_col - 69) / 2; i++)
        printf(" ");
    puts("**************************************************************       ");
    puts("                                                                     ");
    for (i = 0; i < size.ws_col; i++)
        printf("*");
    putchar(10);
}
// func_BiTree fun_BiTree
TfunlyComment funlyComment = {
    keyboard,
    fuckYouBug,
    fuckYouBeauty,
    GodBeastBless,
    theFuckSourceCode,
    TheLittleGirl,
    weWantFuckYou,
    humanSkeleton,
};
